
import { defineStore } from 'pinia'
import {ref} from 'vue'

// 你可以对 `defineStore()` 的返回值进行任意命名，但最好使用 store 的名字，同时以 `use` 开头且以 `Store` 结尾。(比如 `useUserStore`，`useCartStore`，`useProductStore`)
// 第一个参数是你的应用中 Store 的唯一 ID。
export const useStore = defineStore(
    'member',
    () => {
      // 代理商信息
      const profile = ref()
      const userInfo = ref(uni.getStorageSync('agent')||{})
      const token = ref(uni.getStorageSync('token')||'')
      const cardInfo = ref({})
      const isUse = ref()
      // 保存信息，登录时使用
      const setProfile = (val) => {
        profile.value = val
      }
      const setUserInfo = (val) => {
        userInfo.value = val
      }
      const setToken = (val) => {
        token.value = val
      }
      const setCardInfo = (val) => {
        cardInfo.value = val
      }
      const setIsUse = (val) => {
        isUse.value = val
      }
      const setUserInfoImg = (val) => {
        userInfo.value.agentImg = val
      }
  
      // 清理信息，退出时使用
      const clearProfile = () => {
        profile.value = undefined
        token.value = ''
        userInfo.value = null
        cardInfo.value = null
        isUse.value = null
      }
  
      // 记得 return
      return {
        profile,
        userInfo,
        token,
        cardInfo,
        isUse,
        setProfile,
        setUserInfo,
        setToken,
        setCardInfo,
        setIsUse,
        setUserInfoImg,
        clearProfile,
      }
    })